home *** CD-ROM | disk | FTP | other *** search
/ FM Towns: Free Software Collection 11 / FM Towns Free Software Collection 11.iso / t_os / tool / vale091 / sample / sample1.prg < prev    next >
Encoding:
Text File  |  1995-08-18  |  6.0 KB  |  190 lines

  1. 20000 '<<<<<<<<<<<<<<<<<<<<<  SAMPLE1 BEGIN  >>>>>>>>>>>>>>>>>>>>
  2. 20010 *MAIN
  3. 20020 GOSUB *USR_STARTUP    '起動画面描画・初期化モジュール
  4. 20030 '
  5. 20040 '---------- VIL INITIALIZE ----------
  6. 20050 'VILパッケージ初期化
  7. 20060 GOSUB *VIL_CNFOP
  8. 20070 GOSUB *VIL_ENV_INITM
  9. 20080 GOSUB *VIL_BEEP_INITM
  10. 20090 VIL_W0&=1024*600\2  '画面退避(最大ウィンドウ総面積)
  11. 20100 VIL_W1%=20          '最大ウィンドウ番号
  12. 20110 GOSUB *VIL_WIN_INITM
  13. 20120 GOSUB *VIL_VKEY_INITM
  14. 20130 VIL_W0%= 80        '最大メニュー番号
  15. 20140 VIL_W1%=100        '最大ボックス数
  16. 20150 VIL_W2%=10          '設定メニュー最大行数
  17. 20160 GOSUB *VIL_MSEL_INITM
  18. 20170 VIL_W0%=0           'ヒストリ系列数
  19. 20180 GOSUB *VIL_INP_INITM
  20. 20190 VIL_W0%= 80        '最大ウィンドウ通し番号
  21. 20200 VIL_W1%=8           'ウィンドウ背景色用パレット番号
  22. 20210 VIL_W2%=0           '枠幅パターン数
  23. 20220 GOSUB *VIL_VWM_INITM
  24. 20230 GOSUB *VIL_SBAR_INITM
  25. 20240 GOSUB *VIL_SEL_INITM
  26. 20250 GOSUB *VIL_CNFCL
  27. 20260 '
  28. 20270 'アプリ環境ファイル読み込み
  29. 20280 '
  30. 20290 GOSUB *VIL_ENV_ROP
  31. 20300   GOSUB *VIL_BEEP_ENVR
  32. 20310   GOSUB *VIL_WIN_ENVR
  33. 20320   GOSUB *VIL_VKEY_ENVR
  34. 20330   GOSUB *VIL_MSEL_ENVR
  35. 20340   GOSUB *VIL_INP_ENVR
  36. 20350   GOSUB *VIL_MG_ENVR
  37. 20360   GOSUB *VIL_VWM_ENVR
  38. 20370   GOSUB *VIL_SBAR_ENVR
  39. 20380   GOSUB *VIL_PDM_ENVR
  40. 20390   GOSUB *VIL_SEL_ENVR
  41. 20400 GOSUB *VIL_ENV_RCL
  42. 20410 '
  43. 20420 GOSUB *USR_INIT    '初期化モジュール
  44. 20430 '
  45. 20440 CLS:GOSUB *WIN_
  46. 20450 'メイン
  47. 20460 *WIN_MAIN
  48. 20470 VIL_VWM_N%=  1:VIL_VWM_AT%=31:VIL_VWM_T$="MAIN"
  49. 20480 GOSUB *VIL_VWM_OP
  50. 20490 VIL_MSEL_BC%=0:VIL_VWM_R%=0
  51. 20500 WHILE VIL_VWM_R%<>2:VIL_VWM_R%=0
  52. 20510   GOSUB *USR_DRAW_WIN_MAIN
  53. 20520   WHILE VIL_VWM_R%<>2 AND VIL_VWMR%<>16
  54. 20530     GOSUB *VIL_VWM_CHECK:VIL_KN%=0
  55. 20540     IF VIL_VWM_R%=0 THEN GOSUB *MENU_MAIN
  56. 20550   WEND
  57. 20560 WEND:VIL_VWM_R%=0:RETURN
  58. 20570 'ファイル
  59. 20580 *WIN_FILE
  60. 20590 VIL_VWM_N%=  2:VIL_VWM_AT%=31:VIL_VWM_T$="FILE"
  61. 20600 GOSUB *VIL_VWM_OP
  62. 20610 VIL_MSEL_BC%=0:VIL_VWM_R%=0
  63. 20620 WHILE VIL_VWM_R%<>2:VIL_VWM_R%=0
  64. 20630   GOSUB *USR_DRAW_WIN_FILE
  65. 20640   WHILE VIL_VWM_R%<>2 AND VIL_VWMR%<>16
  66. 20650     GOSUB *VIL_VWM_CHECK:VIL_KN%=0
  67. 20660     IF VIL_VWM_R%=0 THEN GOSUB *MENU_FILE
  68. 20670   WEND
  69. 20680 WEND:VIL_VWM_R%=0:RETURN
  70. 20690 '編集
  71. 20700 *WIN_EDIT
  72. 20710 VIL_VWM_N%=  3:VIL_VWM_AT%=31:VIL_VWM_T$="EDIT"
  73. 20720 GOSUB *VIL_VWM_OP
  74. 20730 VIL_MSEL_BC%=0:VIL_VWM_R%=0
  75. 20740 WHILE VIL_VWM_R%<>2:VIL_VWM_R%=0
  76. 20750   GOSUB *USR_DRAW_WIN_EDIT
  77. 20760   WHILE VIL_VWM_R%<>2 AND VIL_VWMR%<>16
  78. 20770     GOSUB *VIL_VWM_CHECK:VIL_KN%=0
  79. 20780     IF VIL_VWM_R%=0 THEN GOSUB *MENU_EDIT
  80. 20790   WEND
  81. 20800 WEND:VIL_VWM_R%=0:RETURN
  82. 20810 '実行
  83. 20820 *WIN_EXEC
  84. 20830 VIL_VWM_N%=  4:VIL_VWM_AT%=31:VIL_VWM_T$="EXEC"
  85. 20840 GOSUB *VIL_VWM_OP
  86. 20850 VIL_MSEL_BC%=0:VIL_VWM_R%=0
  87. 20860 WHILE VIL_VWM_R%<>2:VIL_VWM_R%=0
  88. 20870   GOSUB *USR_DRAW_WIN_EXEC
  89. 20880   WHILE VIL_VWM_R%<>2 AND VIL_VWMR%<>16
  90. 20890     GOSUB *VIL_VWM_CHECK:VIL_KN%=0
  91. 20900     IF VIL_VWM_R%=0 THEN GOSUB *MENU_EXEC
  92. 20910   WEND
  93. 20920 WEND:VIL_VWM_R%=0:RETURN
  94. 20930 'メイン
  95. 20940 *MENU_MAIN
  96. 20950 GOSUB *USR_DRAW_MENU_MAIN
  97. 20960 SYMBOL( 12, 10),"ファイル",1,1,7
  98. 20970 SYMBOL( 12, 30),"編集",1,1,7
  99. 20980 SYMBOL( 12, 50),"実行",1,1,7
  100. 20990 WHILE VIL_MSEL_R%=0
  101. 21000   VIL_MSEL_MN%=101:VIL_C%=15
  102. 21010   VIL_X%=   8:VIL_Y% =  8:VIL_W% =128:VIL_Z% = 28
  103. 21020   VIL_XL%=  0:VIL_YL%= 20:VIL_XN%=  1:VIL_YN%=  3
  104. 21030   VIL_MSEL_BD%=0:VIL_MSEL_BB%=  1:VIL_MSEL_BE%=  3
  105. 21040   GOSUB *VIL_MSEL_M
  106. 21050   IF      VIL_KN%=  1 THEN
  107. 21060     GOSUB *WIN_FILE
  108. 21070   ELSE IF VIL_KN%=  2 THEN
  109. 21080     GOSUB *WIN_EDIT
  110. 21090   ELSE IF VIL_KN%=  3 THEN
  111. 21100     GOSUB *WIN_EXEC
  112. 21110   ELSE IF VIL_KN%=-1 THEN
  113. 21120     VIL_MSEL_R%=-1
  114. 21130     GOSUB *VIL_VWM_CLOSE
  115. 21140     VIL_MSEL_R%=-1
  116. 21150   ENDIF
  117. 21160 WEND:VIL_MSEL_R%=0:RETURN
  118. 21170 'ファイル
  119. 21180 *MENU_FILE
  120. 21190 GOSUB *USR_DRAW_MENU_FILE
  121. 21200 SYMBOL( 12, 10),"読込",1,1,7
  122. 21210 SYMBOL( 12, 30),"書込",1,1,7
  123. 21220 WHILE VIL_MSEL_R%=0
  124. 21230   VIL_MSEL_MN%=102:VIL_C%=15
  125. 21240   VIL_X%=   8:VIL_Y% =  8:VIL_W% = 70:VIL_Z% = 28
  126. 21250   VIL_XL%=  0:VIL_YL%= 20:VIL_XN%=  1:VIL_YN%=  2
  127. 21260   VIL_MSEL_BD%=0:VIL_MSEL_BB%=  1:VIL_MSEL_BE%=  2
  128. 21270   GOSUB *VIL_MSEL_M
  129. 21280   IF      VIL_KN%=  1 THEN
  130. 21290     GOSUB *USR_LOAD
  131. 21300     VIL_MSEL_R%=-1
  132. 21310     GOSUB *VIL_VWM_CLOSE
  133. 21320   ELSE IF VIL_KN%=  2 THEN
  134. 21330     GOSUB *USR_SAVE
  135. 21340     VIL_MSEL_R%=-1
  136. 21350     GOSUB *VIL_VWM_CLOSE
  137. 21360   ELSE IF VIL_KN%=-1 THEN
  138. 21370     VIL_MSEL_R%=-1
  139. 21380     GOSUB *VIL_VWM_CLOSE
  140. 21390     VIL_MSEL_R%=-1
  141. 21400   ENDIF
  142. 21410 WEND:VIL_MSEL_R%=0:RETURN
  143. 21420 '編集
  144. 21430 *MENU_EDIT
  145. 21440 GOSUB *USR_DRAW_MENU_EDIT
  146. 21450 SYMBOL( 12, 10),"変更",1,1,7
  147. 21460 SYMBOL( 12, 30),"削除",1,1,7
  148. 21470 SYMBOL( 12, 50),"追加",1,1,7
  149. 21480 WHILE VIL_MSEL_R%=0
  150. 21490   VIL_MSEL_MN%=103:VIL_C%=15
  151. 21500   VIL_X%=   8:VIL_Y% =  8:VIL_W% = 80:VIL_Z% = 28
  152. 21510   VIL_XL%=  0:VIL_YL%= 20:VIL_XN%=  1:VIL_YN%=  3
  153. 21520   VIL_MSEL_BD%=0:VIL_MSEL_BB%=  1:VIL_MSEL_BE%=  3
  154. 21530   GOSUB *VIL_MSEL_M
  155. 21540   IF      VIL_KN%=  1 THEN
  156. 21550     GOSUB *USR_CHANGE
  157. 21560     VIL_MSEL_R%=-1
  158. 21570     GOSUB *VIL_VWM_CLOSE
  159. 21580   ELSE IF VIL_KN%=  2 THEN
  160. 21590     GOSUB *USR_DELETE
  161. 21600     VIL_MSEL_R%=-1
  162. 21610     GOSUB *VIL_VWM_CLOSE
  163. 21620   ELSE IF VIL_KN%=  3 THEN
  164. 21630     GOSUB *USR_ADD
  165. 21640     VIL_MSEL_R%=-1
  166. 21650     GOSUB *VIL_VWM_CLOSE
  167. 21660   ELSE IF VIL_KN%=-1 THEN
  168. 21670     VIL_MSEL_R%=-1
  169. 21680     GOSUB *VIL_VWM_CLOSE
  170. 21690     VIL_MSEL_R%=-1
  171. 21700   ENDIF
  172. 21710 WEND:VIL_MSEL_R%=0:RETURN
  173. 21720 '実行
  174. 21730 *MENU_EXEC
  175. 21740 SYMBOL( 12, 10),"実行開始",1,1,7
  176. 21750 WHILE VIL_MSEL_R%=0
  177. 21760   VIL_MSEL_MN%=104:VIL_C%=15
  178. 21770   VIL_X%=   8:VIL_Y% =  8:VIL_W% = 80:VIL_Z% = 28
  179. 21780   VIL_XL%=  0:VIL_YL%=  0:VIL_XN%=  1:VIL_YN%=  1
  180. 21790   VIL_MSEL_BD%=0:VIL_MSEL_BB%=  1:VIL_MSEL_BE%=  1
  181. 21800   GOSUB *VIL_MSEL_M
  182. 21810   IF      VIL_KN%=  1 THEN
  183. 21820     GOSUB *USR_EXEC
  184. 21830   ELSE IF VIL_KN%=-1 THEN
  185. 21840     VIL_MSEL_R%=-1
  186. 21850     GOSUB *VIL_VWM_CLOSE
  187. 21860     VIL_MSEL_R%=-1
  188. 21870   ENDIF
  189. 21880 WEND:VIL_MSEL_R%=0:RETURN
  190.